"""
# 导入模块
import time

print("start")
time.sleep(2)
print("end")

# 导入功能函数
from time import sleep

print("start")
sleep(2)  # 直接使用函数名
print("end")

# 导入全部功能
from time import *  # *代表导入全部功能, 与第一种类似, 但是不用使用time.的形式

print("start")
sleep(2)  # 直接使用函数名
print("end")

# as起别名
# 给模块起别名
import time as t

print("start")
t.sleep(2)
print("end")

# 给函数起别名
from time import sleep as sl

print("start")
sl(2)
print("end")
"""

# 导入自定义模块
from my_module import *
print(test(2, 3))

# 导入同名功能 后一个会覆盖前一个

# __main__变量
# .py文件都有内置变量__name__
# 右键运行文件时__name__变量便会赋值为__main__, 代码就会正常执行
# 而.py文件作为模块导入时则不会执行赋值操作, 从而避免导入模块时执行了模块内的函数(测试函数)

# __all__变量
# 使用import *的方式导入时实际上只是导入了__all__变量(列表)中的功能
# 没有定义__all__变量时就默认导入全部功能
# 可以通过直接其他import功能的方法导入
from my_module import test2 as t2
t2()
